	function $(id) {
		return document.getElementById(id);
	}
	var arr;
	var bmap = 
	{
		status : false,
		map : '',
		point : '',
		overlays : [],
		overlaysCache : [],
		myPolygon : '',
		myOverlay : [],
		drawingManager : '',
		styleOptions : {
			strokeColor : "red", //边线颜色。
			fillColor : "red", //填充颜色。当参数为空时，圆形将没有填充效果。
			strokeWeight : 3, //边线的宽度，以像素为单位。
			strokeOpacity : 0.8, //边线透明度，取值范围0 - 1。
			fillOpacity : 0.3, //填充的透明度，取值范围0 - 1。
			strokeStyle : 'solid' //边线的样式，solid或dashed。
		},
		/**
		 * 实例化
		 */
		init : function() {
			if (this.status) {
				return;
			}
			this.status = true;
			this.map = new BMap.Map('map');
			this.point = new BMap.Point(120.299, 31.568);
			var map = this.map;
			var styleOptions = this.styleOptions;
			map.centerAndZoom(this.point, 16);
			map.enableScrollWheelZoom();
			//实例化鼠标绘制工具
			this.drawingManager = new BMapLib.DrawingManager(map, {
				isOpen : false, //是否开启绘制模式
				enableDrawingTool : true, //是否显示工具栏
				drawingToolOptions : {
					anchor : BMAP_ANCHOR_TOP_RIGHT, //位置
					offset : new BMap.Size(-40, 0), //偏离值
					scale : 0.8
				//工具栏缩放比例
				},
				circleOptions : styleOptions, //圆的样式
				polylineOptions : styleOptions, //线的样式
				polygonOptions : styleOptions, //多边形的样式
				rectangleOptions : styleOptions
			//矩形样式
			});
			//添加鼠标绘制工具监听事件，用于获取绘制结果
			this.drawingManager.addEventListener('overlaycomplete',
					bmap.overlaycomplete);
			/*加载一个已有的多边形*/
			if (this.myOverlay) {
				this.loadMyOverlay();
			}
		},
		loadMyOverlay : function() {
			var map = this.map;
			this.clearAll();
			map.centerAndZoom(this.point, 13);
			myPolygon = new BMap.Polygon(this.myOverlay, this.styleOptions);
			this.myPolygon = myPolygon;
			try {
				myPolygon.enableEditing();
			} catch (e) {
			}
			;
			myPolygon.addEventListener("lineupdate", function(e) {
				bmap.showLatLon(e.currentTarget.W);
			});
			map.addOverlay(myPolygon);
		},
		showLatLon : function(a) {
			var len = a.length;
			var s = '';
			arr = [];
			for ( var i = 0; i < len - 1; i++) {
				arr.push([ a[i].lng, a[i].lat ]);
			}
			this.overlaysCache = arr;
		},
		delPoint : function(i) {
			if (this.overlaysCache.length <= 3) {
				alert('不能再删除, 请保留3个以上的点.');
				return;
			}
			this.overlaysCache.splice(i, 1);
			var a = this.overlaysCache;
			var newOverlay = [];
			for ( var i in a) {
				newOverlay.push(new BMap.Point(a[i][0], a[i][1]));
			}
			this.myOverlay = newOverlay;
			this.loadMyOverlay();
		},
		/**
		 *回调获得覆盖物信息
		 */
		overlaycomplete : function(e) {
			bmap.overlays.push(e.overlay);
			e.overlay.enableEditing();
			e.overlay.addEventListener("lineupdate", function(e) {
				bmap.showLatLon(e.currentTarget.W);
			});
		},
		/**
		 * 清除覆盖物
		 */
		clearAll : function() {
			var map = this.map;
			var overlays = this.overlays;
			for ( var i = 0; i < overlays.length; i++) {
				map.removeOverlay(overlays[i]);
			}
			this.overlays.length = 0;
			map.removeOverlay(this.myPolygon);
			this.myPolygon = '';
		},
		/**
		 *取覆盖物的经纬度
		 */
		getOverLay : function() {
			var box = this.myPolygon ? this.myPolygon
					: this.overlays[this.overlays.length - 1];
			console.log(box.W);
		},
		getCount : function() {
			var n = 0;
			if (this.myPolygon) {
				n++;
			}
			;
			if (this.overlays) {
				n = n + this.overlays.length;
			}
			;
			console.log(n);
		}
	};
	bmap.init();
